package cn.hxzy.mapper;

import cn.hxzy.domain.School;
import cn.hxzy.domain.User;
import cn.hxzy.domain.UserClass;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 项目名: education-platform
 * 当前用户: 18735
 * 创建日期: 2024/6/22 下午2:44
 * 项目介绍:
 */
@Mapper
public interface UserMapper extends BaseMapper<User> {

    /**
     * 登录
     * @param userName 账号
     * @param userPass 密碼
     * @return jwt
     */
    @Select("select * from sys_user where user_name = #{userName} and user_pass = #{userPass}")
    Long login(@Param("userName") String userName, @Param("userPass") String userPass);

    /**
     * 修改用户信息
     * @param user 用戶信息
     * @return 1 成功修改
     */
    int updateUser(User user);

    /**
     * 根据id查询用户信息
     * @return 用户信息
     */
    User selectById();


    /**
     * 根据密码查询用户信息
     * @param userPass 密码
     * @return 当前用户
     */
    @Select("select user_pass from sys_user where user_id=#{userId} and user_pass=#{userPass}")
    String selectOldPwd(@Param("userId") Long userId,@Param("userPass") String userPass);


    /**
     * 修改头像
     * @param userAvatar 头像
     * @return 1 修改成功
     */
    int updatePic(@Param("userAvatar") String userAvatar);

    /**
     * 新增学校
     * @param school
     * @return 1 新增成功
     */
    int save(School school);

    @Select("select user_id from sys_user where user_phone = #{phone}")
    Long loginByCode(String phone);

    /**
     * 根据编号查询班级信息
     * @return 返回用户所对应的所有班级信息
     */
    @Select("select * from sys_user_class where user_id = #{userId}")
    List<UserClass> selectClassById(Long userId);
}
